//当前这个js文件(模块)：对所有的API接口进行统一的管理
import requests from './ajax';
import mockRequests from './mockAjax';

//三级联动接口：/api/product/getBaseCategoryList get 无参数
//发送请求axios发请求返回的结果是Promise对象
export const reqCategoryList = () => {
    return requests({
        url: '/product/getBaseCategoryList',//这里之前配置了baseURL
        method: 'get',
    })
}
//或者：export const reqCategoryList = () => requests.get('/product/getBaseCategoryList');
//切记：当前函数执行需要把服务器返回结果返回，为页面获取到数据

//获取banner(Home首页轮播图接口)，使用的是mock技术
export const reqGetBannerList = () => {
    return mockRequests({
        url: '/banner',//这里之前配置了baseURL
        method: 'get',
    })
}
//或者：export const reqGetBannerList =() => mockRequests.get('/banner');

//获取floor数据，使用的使用mock模拟的数据
export const reqGetFloorList = () => {
    return mockRequests({
        url: '/floor',//这里之前配置了baseURL
        method: 'get',
    })
}

//获取搜索模块数据 地址:/api/list 请求方式:post 参数:需要带参数
//当前这个接口，给服务器传递的默认参数params，至少是一个空对象
export const reqGetSearchInfo = (params) => requests({
    url: '/list',
    method: 'post',
    data: params,
});

//获取产品详情信息点的接口 地址：/api/item/{skuId} 请求方式：get
export const reqGoodsInfo = (skuId) => requests({ url: `/item/${skuId}`, method: 'get' })

//将产品添加到购物车中(获取更新某一个产品的个数) 地址:/api/cart/addToCart/{skuId}/{skuNum} 请求方式:post
export const reqAddOrUpdateShopCart = (skuId, skuNum) => requests({ url: `/cart/addToCart/${skuId}/${skuNum}`, method: 'post' });

//获取购物车列表数据接口 地址：/api/cart/cartList 请求方式：get
export const reqCartList = () => requests({ url: '/cart/cartList', method: 'get' });

//删除购物产品的接口 地址：/api/cart/deleteCart/{skuId} method：delete
export const reqDeleteCartById = (skuId) => requests({ url: `/cart/deleteCart/${skuId}`, method: 'delete' });

///修改商品的选中状态 地址：api/cart/checkCart/{skuID}/{isChecked} method：get
export const reqUpdateCheckedById = (skuId, isChecked) => requests({ url: `/cart/checkCart/${skuId}/${isChecked}`, method: 'get' });

//获取验证码 地址：/api/user/passport/sendCode/phone method：get
export const reqGetCode = (phone) => requests({ url: `/user/passport/sendCode/${phone}`, method: 'get' });

//注册 地址：/api/user/passport/register method：get
export const reqUserRegister = (data) => requests({ url: '/user/passport/register', data, method: 'post' });//属性名与变量名一直，KV省V

//登录 地址：/api/user/passport/login method：get
export const reqUserLogin = (data) => requests({ url: '/user/passport/login', data, method: 'post' });

//获取用户信息【需要带着用户的token向服务器要用户信息，通过请求头携带参数】 地址：/api/user/passport/auth/getUserInfo method：get
export const reqUserInfo = () => requests({ url: '/user/passport/auth/getUserInfo', method: 'get' });

//退出登录 地址：/api/user/passport/logout method：get
export const reqLogout = () => requests({ url: '/user/passport/logout', method: 'get' });

//获取用户发地址信息 地址：/api/user/userAddress/auth/findUserAddressList method：get
export const reqAddressInfo = () => requests({ url: '/user/userAddress/auth/findUserAddressList', method: 'get' });

//获取商品清单 地址：/api/order/auth/trade method：get
export const reqOrderInfo = () => requests({ url: 'order/auth/trade', method: 'get' });

//提交订单的接口 地址：/api/order/auth/submitOrder?tradeNo={tradeNo} method：post
export const reqSubmitOrder = (tradeNo, data) => requests({ url: `/order/auth/submitOrder?tradeNo=${tradeNo}`, data, method: 'post' });

//获取支付信息 地址：/api/payment/weixin/createNative/{orderId} method：get
export const reqPayId = (orderId) => requests({ url: `/payment/weixin/createNative/${orderId}`, method: 'get' });

//获取支付订单状态 地址：/api/payment/weixin/queryPayStatus/{orderId} method：get
export const reqPayStatus = (orderId) => requests({ url: `/payment/weixin/queryPayStatus/${orderId}`, method: 'get' });

//获取个人中心的数据 地址：/api/order/auth/{page}/{limit} method：get
export const reqMyOrderList = (page, limit) => requests({ url: `/order/auth/${page}/${limit}`, method: 'get' });